#ifndef NES_PALETTE_H
#define NES_PALETTE_H
#include <QList>
#include <QRgb>




class NES_Palette
{
  public:
    static NES_Palette* const Default;
    static NES_Palette* const _2C02;
    static NES_Palette* const _2C03_2C05;
    static NES_Palette* const RC2C03B;
    static NES_Palette* const _2C04;
    static NES_Palette* const RP2C04_0001;
    static NES_Palette* const RP2C04_0002;
    static NES_Palette* const RP2C04_0003;
    static NES_Palette* const RP2C04_0004;

    QList<QRgb> GetRGBList();

    void ConvertFrame(uint32_t* Dst,unsigned char* ColorIndexArray,int Length);


    NES_Palette(unsigned char* RGB_Array);
    ~NES_Palette();


  private:
    unsigned char* RGB_Array;
    uint32_t* RGB32_Array;
};

#endif // NES_PALETTE_H
